import request from '@/utils/request'

// 查询队列信息
export function getFormComponent(formId) {
  return request({
    url: `/api/form/getFormComponent/${formId}`,
    method: 'get'
  })
}

export function submitForm(query) {
  return request({
    url: '/api/form/submitForm',
    method: 'post',
    data: query
  })
}

export function getFormInfo(formId) {
  return request({
    url: `/api/form/getFormInfo/${formId}`,
    method: 'get'
  })
}

// 用户照片截图上传
export function uploadFile(data) {
  return request({
    url: '/api/form/upload/file',
    method: 'post',
    data: data
  })
}

/**
 * 获取表单结果（支持按状态筛选）
 * @param {number} formId - 表单ID
 * @param {number} [status] - 可选状态参数（0待审批 1通过 2拒绝 3无需审批）
 * @returns {Promise} 包含表单结果的Promise
 */
export function getFormResult(formId, status) {
  return request({
    url: `/api/form/getFormResult/${formId}`,
    method: 'get',
    params: status !== undefined ? { status } : null
  });
}


// 更新结果状态
export function updateResultStatus(resultId, status) {
  return request({
    url: '/api/form/updateStatus',
    method: 'post',
    data: { resultId, status }
  })
}

// 获取文件URL
export function getFileUrl(filePath) {
  return request({
    url: '/api/form/getUrl',
    method: 'get',
    params: { filePath }
  }).then(res => {
    // 处理相对路径
    // if (!res.data.startsWith('http')) {
    //   return `${process.env.VUE_APP_BASE_API}${res.data}`
    // }
    return res.data
  })
}

// 获取表单列表
export function getFormList() {
  return request({
    url: '/api/form/getFormInstance',
    method: 'get'
  })
}

// 更新表单组件
export function updateFormComponents(data) {
  return request({
    url: '/api/form/updateFormComponentBatch',
    method: 'post',
    data
  })
}

// 删除组件
export function removeFormComponent(formComponentId) {
  return request({
    url: '/api/form/removeFormComponent',
    method: 'post',
    params: { formComponentId }
  })
}
//新增表单
export function createForm(data) {
  return request({
    url: '/api/form/createFormInstance',
    method: 'post',
    data
  })
}
//=================================================================================未修改的js
// 导出表单数据
export function exportFormData(formId) {
  return request({
    url: `/api/form/export/${formId}`,
    method: 'get',
    responseType: 'blob'
  })
}